#include "myboton.h"
#include <QDebug>
#include <QCoreApplication>
myboton::myboton(QWidget *parent) : QPushButton(parent)
{
       //主动关联clicked 信号和自己槽函数
    connect(this,SIGNAL(clicked(bool)),this,SLOT(fun1()));
}

/*
 * 由于软键盘中的所有按钮都是myboton类的对象 ，因此 所有的按钮都是调用这个槽函数
*/
void myboton::fun1()
{
    qDebug()<<"按钮被点击了";
    //获取信息发送者
    QPushButton * p=qobject_cast<QPushButton * >(sender());

    //获取按钮字面值
    QString  str=p->text();

    //自定义一个按键事件
    QKeyEvent * keyevent= new QKeyEvent(QEvent::KeyPress,str.toInt()-32,Qt::NoModifier,str);


      QCoreApplication::postEvent(QApplication::focusWidget(),keyevent);
       // 顺便把按钮的focusPolicy这个属性改成noFocus(没有鼠标焦点)  不然不生效
}
